package com.competitions.videoedithelper.dao;

import com.competitions.videoedithelper.entity.OperationHistory;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author Mapler
 */
@Repository
public interface IOperationHistoryDao {
    /**
     * 插入操作历史
     *
     * @param operationTime 操作时间
     * @param startPosition 操作位置
     * @param endPosition   结束位置
     * @param audioUrl      音频url
     * @param videoId       视频id
     */
    void insertHistory(
            @Param("operationTime") String operationTime,
            @Param("startPosition") String startPosition,
            @Param("endPosition") String endPosition,
            @Param("audioUrl") String audioUrl,
            @Param("videoId") int videoId
    );

    /**
     * 查询某视频的所有操作历史
     *
     * @param videoId 视频id
     * @return 操作历史列表
     */
    List<OperationHistory> selectHistory(@Param("videoId") int videoId);

    /**
     * 查询某视频最后一次修改时间
     * @param videoId 视频id
     * @return 修改时间
     */
    String selectLastChange(@Param("videoId") int videoId);

    /**
     * 查询某视频总共修改次数
     * @param videoId 视频id
     * @return 次数
     */
    int selectEditTimes(@Param("videoId") int videoId);
}
